MintRally の実装を見ていく
情報ズ
https://scrapbox.io/files/6479b923e9765d001ccff94d.webp
スマートコントラクト
contract: Solidity, ERC721Enumerable, Hardhat
image: IPFS, Pinata
EIP を読んだけどピンとこなかった
(余談) なんか ChatGPT っぽい文体だな、という不思議な感覚を抱いた なるほど、アプリケーションのエンドユーザの代わりにガス代を払う仲介者を置けるっぽい
登場人物、これらを語彙として押さえておけるとよさそう
Transaction Signer
Gas Relay
Trusted Forwarder
Recipient
Defender Relay の話の中でもちょろっと触れられている
OpenZeppelin のやつは _trustedForwarder が immutable だけど、こっちはそうじゃない is ERC721EnumerableUpgradeable, ERC2771ContextUpgradeable, OwnableUpgradeable
いわゆる NFT で、Gas Relay 対応していて、オーナーならコントラクトを更新できる MintNFT のインターフェイス
Forwarder だ
verify して execute する、ってことね
is EIP712
署名のとき、構造化されているデータが読みやすいってやつだね
ファイル名は Event.sol だけど定義しているのは EventManager なのね
Event 関連の処理をこのファイルにまとめているっぽい
Web UI
frontend: Next.js, Typecript
Typecript になっていたので Pull Request を出した
npm じゃなくて yarn を使っているっぽい
Next.js 製のアプリケーションとして、ここから順番に読んでいけばいいかな へぇ、知らなかった